// JWT 可以存储在 Cookie 中也可以存储在 LocalStorage 中
import Cookies from 'js-cookie'

// 仅仅在 store 中还不够，因为 store 是存储在内存中，
// 还必须使用 Cookie 将数据进行持久化保存在本地浏览器
const uToken = 'u_token'
const darkMode = 'dark_mode';

// 设置 Token，超期设置为1天，与后端同步
export function setToken(token) {
    return Cookies.set(uToken, token, { expires: 1 })
}

// 获取 Token
export function getToken() {
    return Cookies.get(uToken);
}

// 删除 Token
export function removeToken() {
    return Cookies.remove(uToken)
}

// 删除本地 Cookie 中的所有内容
export function removeAll() {
    return Cookies.Cookies.removeAll()
}

// 设置黑夜模式
export function setDarkMode(mode) {
    return Cookies.set(darkMode, mode, { expires: 365 })
}

// 获取黑夜模式的状态
export function getDarkMode() {
    return !(undefined === Cookies.get(darkMode) || 'false' === Cookies.get(darkMode));
}
